/**
 * Interface that allows a module to respond to ingame called commands. 
 * Only 1 module at any given time is allowed to listen for ingame commands.
 * The commands will get filtered from the normal modules, so usage has to be logged (to irc, logfile, etc.) has to be done by this module.
 * 
 * @author Paul Redert
 * 
 * author: Paul Redert
 * license: GPLV3
 * 
 * GoldenAK Bot - code.google.com/p/goldenak-bot
 * 
 */
package eu.goldenak.ircbot.game;

public interface CommandEvents extends Events{

	/**
	 * Gets called when a command (example !info) gets called from the chat of the game.
	 * Provides an array of arguments (separated with space, example !loadmap mp_backlot sd) for the command.
	 * Note: You can override commands to accept multiple sorts of arguments. 
	 * In that case however, provide enough documentation, so the end user will understand it. 
	 * If a command is not found, the user that typed it should be notified.
	 */
	public void onCommand(Player player, String command, String ... arguments);
	
}
